1. Field of the Invention
The present invention relates to a cartridge carrying system, and more particularly to a cartridge carrying system for automatically carrying a cartridge accommodating a magnetic tape or the like therein to a data input/output device such as a magnetic tape unit.
Further, in the library system having a repository for repositing cartridges therein, a cartridge carrying system, and other, the present invention relates to a library system having a function for eliminating such a state as that a cartridge can not be taken out because of positional deviation made between an accessor and a cell, i.e., a gap state.
2. Description of the Related Art
1. Cartridge Carrying System
Referring to FIG. 9, there has been proposed an automatic loading mechanism (auto-loader) for carrying a cartridge accommodating a magnetic tape therein to a magnetic tape unit without needs of operation by an operator.
FIG. 9 shows the appearance of the auto-loader 51 and a magnetic tape unit 52 connected to each other.
The auto-loader 51 includes a magazine 54 having a shelf structure for accommodating a plurality of cartridges, and a cartridge carrying mechanism (referred to as a carrier hereinbelow) 53.
Each of cartridges accommodated in the magazine 54 is taken out from the magazine 54 by the carrier 53 and inserted into a cartridge insertion opening of the magnetic tape unit 52.
In this example, the carrier 53 is so configured as to be capable of elevating action.
FIG. 10 is a view showing a structure of an example of the carrier 53.
In the drawing, a reference character A1 denotes an arm, a number of arms provided being two. The two arms A1 are rotated in a direction (1) or (2) to sandwich a cartridge K1 therebetween, thereby carrying the cartridge K1. A reference character M1 designates a carrying motor which is disposed to each arm A1 to drive a belt B1 wound around the periphery of each arm A1. The belts B1 carry the cartridge K1 in the horizontal direction.
A reference character M2 represents a motor for turning the arms, and drive of the motor in a direction (a) or (b) involves turning action of the two arms A1 around each supporting point P of the arms A1 in the direction (1) or (2) by an eccentric cam disposed to the motor.
For example, when the both arms A1 are turned in the direction (1), one end of each of the two arms A1 on the left-hand side is closed to hold the cartridge K1.
Conversely, when the two arms A1 are rotated in the direction (2), the one end of each of the two arms A1 on the left-hand side is opened while the other end of the same on the right-hand side is closed to hold the cartridge K1.
After held between the two arms A1, the cartridge K1 is carried by drive of the belts B1 in a direction (3) or (4). Reference characters S1 and S2 denote sensors for monitoring that cartridge carrying operation has been effected normally. The ON state of the both sensors means completion of the operation for carrying the cartridge into the carrier.
Reference characters S3 and S4 designate sensors which are provided in the vicinity of the motor M2 and detect the turning action of the arms, namely, the opened or closed state of the ends of the arms on the left- or right-hand side.
For instance, if the motor M2 is stopped when the sensor S3 is turned on, the ends of the arms A1 on the right-hand side are closed. Meanwhile, if the motor M2 is stopped when the sensor S4 is turned on, the ends of the arms A1 on the left-hand side are closed.
Further, in the case where the motor M2 is not stopped, namely, the motor M2 keeps driving, the two arms A1 repeat the opening/closing operation.
Driving the motor M1 while holding the cartridge K1 by the arms A1 involves rotation of the belts B1 in the direction (c) or (d), and the cartridge K1 is then moved in the direction (3) or (4) by drive of the belts.
For example, when the belts B1 are rotated in the direction (c), the cartridge is carried in the direction (3).
The operation of the auto-loader and the carrier having such a configuration is controlled by a control unit provided within the magnetic tape unit.
An example of the conventionally-used control will now be explained.
A) When Inserting the Cartridge Provided within the Magazine into the Magnetic Tape Unit
1: The carrier is moved to a position of a cartridge, which is to be taken out, by the elevating drive of the carrier itself.
2: The cartridge is taken out from the magazine and carried into the carrier by drive of the belts provided at the arm portions.
3: In the state 1 described above, the carrier itself is controlled by elevating drive and moved to the cartridge insertion opening of the magnetic tape unit.
4: The cartridge within the carrier is carried into the cartridge insertion opening by drive of the belts provided at the arm portions.
5: The thus-carried cartridge is pushed into the magnetic tape unit.
B) When Returning the Cartridge Ejected from the Magnetic Tape unit into the Magazine
6: The cartridge ejected from the magnetic tape unit is carried into the carrier by drive of the belts provided at the arm portions.
7: In the state 5 described above, the carrier itself is controlled by elevating drive and moved to a position of the magazine at which the cartridge was accommodated.
8: The cartridge is carried from inside of the carrier into an insertion opening of the magazine by drive of the belts provided at the arm portions.
9: The thus-carried cartridge is pushed into the magazine.
Description will now be given as to an example of the prior art where the cartridge is carried from the left-hand side to the right-hand side in the drawing with reference to FIG. 11.
In the example, the cartridge K1 is carried into the carrier as follows.
In the case where the cartridge K1 located on the left-hand side of the carrier 53, i.e., at a position (X) is carried into the carrier 53, the motor M2 is driven in the direction (a) and the arms A1 are opened in the direction (1). The motor M2 is then stopped at a position where the sensor S4 is turned on.
Subsequently, when the motor M1 is driven so that the belts B1 move in the direction (c), the cartridge K1 is moved in the direction (3). The sensors S1 and S2 perform monitoring operation during drive of the motor M1, and operation for carrying the cartridge K1 into the carrier 53 is completed at a position where the both sensors S1 and S2 are turned on, namely, operation is finished at a position (Y), thereby stopping the motor M1.
On the other hand, in the case where the cartridge K1 located on the right-hand side of the carrier 53, i.e., at a position (Z) is carried into the carrier 53, the motor M12 is driven to move in the direction (b) and the arms A1 are closed in the direction (2). The motor M2 is then stopped at a position where the sensor S3 is turned on.
Next, when the motor M1 is driven so that the belts B1 move in the direction (d), the cartridge K1 is moved in the direction (4).
The sensors S1 and S2 perform monitoring operation during drive of the motor M1, and it is assumed that the cartridge K1 is accommodated in the carrier 53 at a position where the both sensors S1 and S2 are turned on, namely, at the position (Y), thereby stopping the motor M1. The above description is an overview of processing for holding and carrying the cartridge K1 placed at the position (X) or (Z) into the carrier 53.
In the conventional cartridge carrying system, however, there is a following problem: That is, according to such a method as described in the above A) and B), the cartridge can not be successfully held by the arms in the carrier due to a difference in widths of the cartridges and the carriage is failed in the operations of 1, 3 and 5 of A) for inserting the cartridge into the magnetic tape unit and the operation of 7 of B) for returning the cartridge into the magazine.
FIG. 12 illustrates an example of the cartridge carrying operation in the case where such a problem occurs.
The drawing shows the problem which may occur when a cartridge having a small dimension is carried into the carrier if there is a difference in widths W of cartridges.
In this example, as shown in the drawing, the cartridge is moved from the left-hand side to the right-hand side, but a small gap D is disadvantageously made between the cartridge and each belt B1 before the cartridge reaches the position at which the sensor S2 is on.
The cartridge can not be moved to the right-hand side any longer because of the gap D.
When this problem occurred, such a retry control as shown in the flowchart of FIG. 13 has been carried out in the prior art.
At the step S101, the processing for holding the cartridge placed at the position X in FIG. 11 is effected.
A number of times for retry is determined at the step S102, and the motor M1 is driven and the belts B1 are moved so that the cartridge is carried into the carrier at the step S103.
A monitoring time T (T&gt;an actual operation time) is determined at the step S104.
The monitoring time T corresponds to the time after the belts are activated until the both sensors S1 and S2 are turned on and the operation for carrying the cartridge into the carrier is completed.
It is monitored if the both sensors S1 and S2 are turned on within the monitoring time T at the steps S105, S106 and S107, and when the both sensors S1 and S2 are turned on, the motor M1 is stopped (the step S108).
If the both sensors S1 and S2 are not turned on beyond the monitoring time T (the step S105), the cartridge is not completely carried into the carrier, and the motor M1 is hence stopped (the step S109). Then, the processing for temporarily returning the cartridge to the position X is performed (the step S110).
If the cartridge is not normally carried into the carrier even though a number of times for retry has been subjected to subtraction at the steps S111 and the processing for carrying the cartridge to the position Y has been performed the thus-set number of times for retry (the step S112), an error code is set (the step S113) and the processing is completed.
However, if the gap D is generated between the cartridge and each belt even though the carrying processing is repeated as described above, the cartridge may not be returned to the position X. In addition, even if the cartridge is returned to the position X, it is difficult to again carry the cartridge to the position Y in the carrier.
2. Library System (Having an Accessor Function for Eliminating the Gap State)
In general, it may be considered that both fixed repository (fixed cells) and rotary repository (driven cells) can be provided in a library system accommodating storage mediums having a large capacity therein as shown in FIG. 40, and additional provision or movement of the cells after installation is possible.
In the thus-installed repositories, an accessor is moved in directions X, Y and Z in order to fetch a cartridge accommodated in each cell.
Information about an absolute position of each cell that is determined during designing process or installation process is stored in an accessor controller which is not shown in the drawing, and the accessor is moved to the position of any desired cell in accordance with this information.
Further, the deviation between positions of the accessor and each cell is corrected by using a reflex photoelectric sensor or the like if necessary.
However, when the gap state is avoided in this way, there occur following problems. In FIG. 40, after the accessor is moved to the position corresponding with a desired cell, a hand portion of the accessor is driven to fetch the cartridge in the cell.
As shown in FIG. 41(a), if the accessor is aligned with the cell so that they appropriately face to each other, the cartridge can be fetched normally. However, as shown in FIG. 41(b), if the position of the accessor deviates from that of the cell, the accessor can not fetch the cartridge. Also, even if the accessor can held the cartridge, there may occur problems such that the cartridge touches a wall of the cell and thereby can not be taken out and that the cartridge is sandwiched between the cell and the accessor.
When this gap state is generated, the processing for returning the hand portion of the accessor toward the accessor has been carried out in the prior art library system, but this returning operation is failed if friction between the cartridge and the cell is larger than the force for returning the accessor.
Further, in case of a library system having a plurality of accessors, one accessor may be substituted by another accessor so that the operation continues if the accessor fails to operate. However, when the gap state occurs, the substitution by another accessor is impossible and there is caused a drawback such that the operation of the library system is stopped until a customer engineer restores the system from the gap state.
3. Library Control System
In general, a library control system has been conventionally provided with: a repository for accommodating a plurality of replaceable storage mediums (cartridges), e.g., cartridge type magnetic disks each having rear and front faces on which data are written; a plurality of storage medium carrying mechanisms for fetching a specified storage medium from a plurality of the storage mediums and mounting it on a recording/reproducing mechanism; a plurality of recording/reproducing mechanisms for recording/reproducing data to and/or from the thus-fetched storage medium; and a library control unit for controlling these mechanisms.
In this system, the repository consists of a plurality of cells each having an enough space for accommodating the storage medium therein, and each cell has an address. Also, the library control unit stores the information of each cell and its cartridge held therein.
Moreover, generally, in a large scale collective mass storage system having a plurality of such library control systems, each library control system functions in accordance with a command issued from a work station or a personal computer which is a host device, i.e., a host computer.
For example, when the library control system receives from the work station a command to fetch data having a given name, the library control unit of the library control system selects a cartridge having the data in accordance with the previously-stored information and instructs the carrying mechanism and the recording/reproducing mechanism to take out the cartridge and reproduce the data.
In this system, the host device is usually used by a user of the library control unit, and a plurality of the host devices are provided. Therefore, multiple users may simultaneously use the host devices in some cases, and a plurality of carrying mechanisms and recording/reproducing mechanisms are hence provided.
The operation of the prior art library control system will now be described.
FIG. 15 is a block diagrams showing the structure of the library control system.
In the drawing, a reference numeral 101 denotes a host device for issuing a command to mount or unmount the cartridge provided in a medium repository 117 to or from any of disk units 116, namely, a work station or a personal computer.
A reference numeral 102 designates a library control unit for monitoring/controlling the operation of the library system 113, and the library control unit 102 is usually a work station used for exclusively controlling the library system 113.
A reference numeral 103 represents a host interface for receiving a command from the host device and performing communication. When a command received by the library control unit 102 is decoded, a library interface 104 communicating with the library system 113 is informed of this fact.
In addition, there are provided a CPU 105 for performing arithmetic operation; a ROM 106 for storing a program executed by the library control unit 102; a RAM 107; a keyboard controller 109 for receiving an input from a keyboard 108; a disk 110 having a volume information management table; and a disk controller 111 for having access to the disk 110. These members are connected through a bus 112.
A reference numeral 113 denotes a library system having the cartridges therein, the library system being connected with the library control unit 102 through the library interface 104.
A reference numeral 114 designates a library system controller which is an interface for communicating with the library control unit 102. Also, the library system controller 114 analyzes a command received by the library control unit 102 and controls carrying operation of an accessor robot 115 for grabbing the cartridge and operation of a plurality of disk units 116 for mounting the cartridge thereon to record and/or reproduce data.
A reference numeral 117 denotes a medium repository consisting of a plurality of cells each having a cartridge therein.
In this example, the cartridge, which is to be carried and has data to be recorded and/or reproduced, is a cartridge type magnetic disk medium having front and rear surfaces on which data are recorded.
Further, the conventional volume information management table recorded in the disk 110 has such a configuration as shown in FIG. 16.
Here, a volume name means an identification name given to one group of data defined for a given purpose or each JOB, and is supplied from the host device 101.
The volume information management table is used for managing the status of use of the cartridge in accordance with each volume name and produced when the cartridge is inserted into and reposited in the cell.
In FIG. 16, "self-address" indicates a position for reposition in the medium repository 117; "side A/side B" indicates a side of the cartridge on which data are recorded; "state-of-use flag" indicates whether the cartridge having a volume is currently used; and "library ID" is the information indicating the library system having that volume among a plurality of the library systems.
Further, a number of times that the cartridge having that volume is mounted is recorded as a number of times for using the medium.
FIG. 17 is a flowchart showing an example of mount processing in the conventional library control system.
When the volume is directed to be mounted by an input from the host device 101 or the keyboard 108, the CPU 105 is informed of this directive command through the host interface 103 or the keyboard controller 109.
The CPU 105 reads the designated volume information through the bus 112 from the disk 110.
At this time, the disk controller 111 makes reference to the volume information management table on the disk 110 to retrieve the designated volume name (the step S501).
At the steps S502, the state-of-use flag of the designated volume is confirmed and judgment is made upon whether the designated volume is currently used.
If it is currently used, the processing is completed. On the other hand, if it is not used, the self-address of the designated volume is recognized (the step S503).
Subsequently, the state-of-use flag of the designated volume is made to indicate "in-use" state (it is turned ON) (the step S504).
At the step S505, any volume having the same self-address is retrieved in the volume information management table by using the self-address of the designated volume, and the volume information on the side opposed to the side on which the designated volume exists is also extracted. Further, at the step S506, the state-of-use flag of the thus-extracted volume is made to indicate "in-use" state (it is turned ON).
At the step S507, a command to retrieve a vacant disk unit 116 is issued to the library system controller 114 through the library interface 104, and the library control system waits for a response indicating an existence of a vacant disk unit 116.
If a vacant disk device 116 exists, a command is issued to the library system controller 114 to secure that disk unit 116 at the step S508, and the cartridge having the designated volume is moved to the secured disk unit 116 by the accessor robot 115 (the step S509).
At the step S510, a number of times for using the medium recorded in the volume information of the designated volume is counted up, namely, it is increased by one.
As mentioned above, in the conventional library control system, the cartridge is mounted and the information concerning a number of times that the medium is used is recorded. The information indicating the number of times of use is mainly utilized for realizing the optimum arrangement of the cartridge.
For example, in Japanese patent laid-open publication No. 4-283485, there is disclosed an external storage unit having an automatic loading mechanism for enhancing the throughput of the system by repositing a frequently-used recording medium at a position close to the recording/reproducing mechanism by using a table showing frequencies of use of cells.
In Japanese patent laid-open publication No. 59-213060, there is disclosed a mass storage unit having a collection of cartridges which are grouped in such a manner that the cartridge having a higher frequency of use is accommodated in the cell which is more closer to the recording medium by recording a number of times that the cartridge is mounted on a frequency-of-use management table.
The both units are intended to store the information indicating the frequency of use and utilized for realizing the optimum arrangement of the cartridges in the medium repository using this information.
Further, Japanese patent laid-open publication No. 63-14252 discloses a method for selecting a medium repositing files, by which a number of times of use and a capacity of each file are recorded and a medium to be reposited is selected in accordance with the number of times of use per unit capacity.
In Japanese patent laid-open publication No. 52-2421, there is disclosed a magnetic storage unit having a life management function for magnetic recording mediums, the life management function being used to store a frequency of use for each recording medium and indicate that the recording medium can not be used when the frequency of use exceeds a predetermined frequency of use.
In regard of the library control system, the above-mentioned conventional systems are not designed to ease the frequent use of the same medium. That is, if a plurality of users are simultaneously using the library control system, they may happen to read or write data of the same cartridge concurrently.
When the contentious use of the same cartridge occurs, one user can not use the cartridge and thereby have to wait until the use by the other user is finished.
Further, in case of using the cartridge having both sides capable of being used, when one user uses one side of the cartridge, use of the other side of the same cartridge which is requested by another user may be impossible.
When using the data recorded on a side opposed to the side on which the frequently-used data are recorded, the waiting period is frequently generated, thereby deteriorating the efficiency of use of the data.
Furthermore, in a system in which a number of times that data of each volume are used is counted, the number of times that the data are used can not be said to directly reflect a number of time that use of the data is requested, i.e., the frequency of use of the data.
That is, if a counted number of times that the data are used is small, it is difficult to judge that a number of time that use of the data is requested is actually small or the number of times that the data are used is small because data on the opposed side is very frequently used and the data in question can not be used, whereby there is a problem such that the number of times that the data are used can not be directly regarded as the frequency of use.
4. Accessor Control Method for Detecting a Relative Position
With increase in the quantity of information used in a computing system in recent years, there have been proposed various library systems for functioning as automated mass storage units requiring no operation by operators as means for storing the information.
Each of these library system is provided with a repository for accommodating a plurality of recording mediums such as magnetic tape cartridges, optical disk cartridges or others. Recording mediums are previously accommodated in a plurality of cells which are provided in the repository and used for accommodating the recording mediums therein, respectively. An accessor hand portion having a mechanical hand fetches a necessary recording medium from a cell of the repository and carries it to a recording/reproducing portion where the recording medium is set, whereby writing/reading of data is performed.
When the writing/reading of data is completed, the recording medium is again taken out from the recording/reproducing portion and carried to the cell of the repository to accommodate the medium therein. Also, an unnecessary recording medium is carried to an ejection opening to be taken out by an operator. Another recording medium put in an input opening by an operator is carried to the recording/reproducing portion and set, or carried to the cell to be accommodated therein. With such an arrangement, the library system is configured as a kind of automatic warehouse.
FIGS. 25 and 26 are schematic views each showing the positional relation established between an accessor and a repository which are main parts in the library system and a repository.
Referring to FIG. 25, a plurality of cells constituting the repository are of fixed type (the cells are referred to as fixed cells), the accessor moves in a direction of the X axis or the Y axis to fetch a cartridge stored in each fixed cell by using an accessor hand portion.
In this example, an accessor controller is used for moving the accessor to a previously-stored position in front of each cell so that the cartridge can be taken out.
As shown in FIG. 26, the repository has a structure referred to as "rotary driven cells", and takes out the cartridge in a driven cell by controlling the position of the accessor and rotation of the driven cells by using the same accessor with that shown in FIG. 25.
In such a library system having the above-mentioned configuration, the structural dimension of each of both the fixed cells and the driven cells is determined during a designing process, and an absolute position of each of the assembled cells can be theoretically specified.
However, since a certain amount of error is generated during an assembling process, the cartridge may not be taken out because of the error if the position of each cell is specified in accordance with the absolute position.
There is thus taken a measure for calculating a relative position by measuring an error from the absolute position (for example, a coordinate value of a central position of each cell) in order to obtain the actual position of each cell.
For instance, a method by which a measuring jig is used for measuring a deviation from a position at which the accessor is stopped has been proposed in Japanese patent laid-open publication No. 62-251601.
According to this method, a jig cartridge which is accommodated in the cell and has a screw mechanism uniformly protruding in the horizontal direction and another jig cartridge having a pin for detecting a central position of the cell are used to measure the deviation from the central position of the cell.
Further, there has been disclosed a method for detecting a relative position with a configuration having a reflex photoelectric sensor detecting an end portion of the cell in Japanese patent laid-open publication No. 2-94156.
According to this method, one or more reflex photoelectric sensors are provided to the accessor hand portion shown in FIG. 25 and a target flag is set at a specified position in the repository so that the relative position of the accessor hand portion to the repository is detected on the basis of information concerning the target flag output from the sensors.
Moreover, there have been proposed a method by which a video camera is used for image processing and a method using a transparent photoelectric sensor in order to detect the relative position, as well as the methods described above.
As for the accessor control method for detecting the relative position, it takes time to carry out measurement when using the jig for measuring the positional deviation, and the structural error of the screw mechanism or the like is generated, resulting in a problem such that the relative position can not be detected with high accuracy.
Further, in case of image processing using the video camera, configuration and processing of the system are complicated and not hence suitable for increasing the processing speed, and this system is disadvantageously expensive.
Furthermore, when using the transparent photoelectric sensors, since the sensors must be provided on the both sides of a target of detection so that the target is sandwiched therebetween, it is difficult to position the sensors.
Moreover, in the case where the reflex photoelectric sensor is used, the sensor may be provided on only one side of the target, but characteristics of the sensor vary depending on a distance between the sensor and the target, whereby the stable accuracy of detection may not be obtained. Also, following drawbacks are observed: Adjustment of the optical axis and the sensitivity of the sensor is difficult; the sensor itself is expensive; and resolution of the position detection of this sensor is inferior to that of the transparent sensor.
5. Control Unit
Conventionally, many of apparatuses utilized in various fields, e.g., an information processing system such as a personal computer, a word processor or a printer, a data communication system, an automatic carrying system or a manufacturing system have MPUs (Micro Processor Units) therein for controlling their operation. The MPU usually controls the system in accordance with the procedure determined on the basis of program codes stored in a ROM 1 (Read Only Memory).
In addition, when an advanced MPU is used, use of the ROM which can cope with the execution speed of the MPU leads to increase in cost. Therefore, an inexpensive RAM (Random Access Memory) whose execution speed is high may be provided separately from the ROM. In such a case, the program codes stored ,in the ROM may be first developed on the RAM temporarily, and an execution address of the MPU may be shifted on the RAM to perform the control.
Description will now be given hereinbelow as to an example of the prior art in which the program codes stored in the ROM are developed on the RAM.
FIG. 49 is a block diagram showing an example of hardware configuration of a conventional control unit. An MPU 1 is a processor for controlling this unit and connected with a RAM 1, an NVRAM 1, I/O 1 and a ROM 1 through a bus BUS 1 Consisting of an address bus, a data bus and others.
The NVRAM 1 is a non-volatile memory whose content stored therein can not be eliminated even if a power supply is turned off. The NVRAM 1 stores, e.g., setting data which differ for each individual user.
Further, the I/0 1 is an input/output driver and connected with external units such as various input/output units or optional units which are to be controlled. Through this input/output driver, signals for controlling the external units or supervisory signals are input and/or output.
Codes of the control program required for the operation of the control unit are stored in the ROM 1.
FIG. 50 illustrates an example of the program codes stored in the ROM 1 in the prior art.
In this example, program codes BOOT 1 which are executed when starting the MPU 1 and main program codes CODE 1 which are used for controlling the control unit are separately stored in the ROM 1.
Further, the main program codes CODE 1 consist of: program codes MAIN 1 for controlling the control unit body; program codes SUB n (n=1, 2, . . . ) for controlling external units such as an optional unit; or program codes FUNC n (n=1, 2, . . . ) for realizing an expanded function for individual users.
Here, the program codes BOOT 1 are a program for starting the main program CODE 1.
FIG. 51 is a flowchart showing a processing for starting the program codes in the prior art. When the MPU 1 is started after the power supply of the unit is turned on, the starting program codes BOOT 1 in the main program codes CODE 1 are started (at the step S1251), and the MPU 1 is activated in accordance with the BOOT 1.
As described above, the BOOT 1 is a program stored in the ROM 1.
The MPU 1 develops the main program codes CODE 1 on the RAM 1 in accordance with the BOOT 1 (the step S1252).
Upon completion of the processing for developing the main program codes CODE 1 (the step S1253), the execution address of the MPU 1 is shifted on the RAM 1 by the program BOOT 1 (the step S 1254).
Thereafter, the main program CODE 1 developed on the RAM is started, and the MPU 1 executes the processing of the unit on the basis of the start of the main program CODE 1 (the step S 1255).
The above describes the processing for starting the program codes in the prior art.
In addition, in Japanese patent laid-open publication No. 5-12026, there has been disclosed a magnetic disk unit having non-volatile storage means and volatile storage means, the magnetic disk unit storing only a commonly-used part of program codes for controlling the magnetic disk unit in the non-volatile storage means and storing program codes whose types of processing differ for each of a plurality of magnetic disk units in each magnetic disk unit, thereby executing the program after storing the program codes different for each unit in the volatile storage means.
Further, a magnetic disk unit having such a configuration that the program codes are compressed and stored in the non-volatile storage means and the program codes are developed on the volatile storage means when turning on the power supply has been disclosed in this Japanese patent laid-open publication No. 5-12026.
However, the following problems are observed in these conventional control units.
As the scale of program development becomes large or other functions are additionally provided year by year, the scale of program codes may exceed the capacity of the ROM provided in the unit.
In particular, if any unit connected as an option with an information processing unit or a control unit does not have its own MPU, a control program for the option unit must be provided in a main body of the information processing unit so that the option unit can be controlled. Therefore, as a number of the option units increases, the capacity of program codes in the main body also increases.
Further, if multiple users utilize a given information processing unit, the unit responds to each individual user, and there may hence often occur a case such that functions required by the users must be additionally provided or changed.
Thus, program codes in the developed code become large in scale and may exceed the initially-estimated capacity for storing the program.
To solve these problems, as described in the above Japanese patent laid-open publication No. 5-12026, it can be considered to take such a measure as that program codes are first compressed and stored in the ROM and the compressed program codes are decoded and developed on the RAM to thereafter execute processing.
There is, however, a limit in the capacity of the RAM which is an area on which the program codes are developed.
That is, even if all the program codes can be compressed and stored in the ROM, the restriction is put on the program codes so that they must not exceed the previously-provided maximum capacity of the RAM.
Therefore, it may be considered that the ROM storing only the necessary program codes therein is provided in accordance with existence/absence of the optional unit, each function to be used or each user, but management of production and a number of ROMs may be extremely complicated.